/**
 * 项目名称:
 *
 * @Author: 夏国倩
 * @Date: 2023/9/11 18:34
 * @Copyright
 *
 * 描述毕姥爷和毕老师，
 * 毕姥爷 拥有讲课和钓鱼功能
 * 毕老师 拥有讲课和看电影功能
 */
package Polymorphism;

public class 毕姥爷 {
    void 讲课(){
        System.out.println("政治");
    }
    void 钓鱼(){
        System.out.println("钓鱼");
    }
}
//毕老师继承了毕姥爷，就拥有了毕姥爷的讲课 和钓鱼的功能
//毕老师和毕姥爷的讲课内容不一样，因此毕老师要覆盖毕姥爷的讲课功能
class 毕老师 extends 毕姥爷{
    void 讲课(){
        System.out.println("Java");
    }
    void 看电影(){
        System.out.println("看电影");
    }
}
class Test2{
    public static void main(String[] args) {
        //多态形式
        毕姥爷 a = new 毕老师();//向上转型
        a.讲课();//表象是毕姥爷，其实真正讲课的是毕老师
        a.钓鱼();//表象是毕姥爷，毕老师继承了毕姥爷，即毕老师也具有钓鱼的功能
        //当要调用毕老师特有的看电影功能时，就必须进行类型转换
        毕老师 b = (毕老师)a;
        b.看电影();
    }
}
